#ifndef _ConfigOptionMap_H__
#define _ConfigOptionMap_H__

#include "U2PreRequest.h"
#include "U2StringUtil.h"


U2EG_NAMESPACE_BEGIN


/** Packages the details of a configuration option.
@remarks
    Used for RenderSystem::getConfigOptions. If immutable is true, this
    option must be disabled for modifying.
*/
typedef struct _ConfigOption
{
    U2String        name;
    U2String        currentValue;
    U2StringVector  possibleValues;
    bool            immutable;
} ConfigOption;

typedef std::map< U2String, ConfigOption >      U2ConfigOptionMap;



U2EG_NAMESPACE_END

#endif
